<template>
  <div v-if="row.actions.length > 2">
    <a @click="handleClickMore(row.actions[0].name, row)">{{ row.actions ? row.actions[0].label : '' }}</a>
    <Divider type="vertical" />
    <Dropdown @on-click="(name) => handleClickMore(name, row)" transfer>
      <a>更多
        <Icon type="ios-arrow-down" />
      </a>
      <DropdownMenu slot="list">
        <DropdownItem v-for="(item, i) in row.actions.slice(1)" :key="i" :name="item.name">{{ item.label }}
        </DropdownItem>
      </DropdownMenu>
    </Dropdown>
  </div>
  <div v-else>
    <a v-if="row.actions && showBtn(row.actions[0].label)" @click="handleClickMore(row.actions[0].name, row)">{{
      row.actions[0].label }}</a>
    <Divider v-if="row.actions && row.actions.length > 1" type="vertical" />
    <a v-if="row.actions && row.actions.length > 1" @click="handleClickMore(row.actions[1].name, row)">{{
      row.actions[1].label }}</a>
  </div>
</template>
<script>
import dynamictableactions from '@/mixins/dynamictableactions'; // 混入通用代码
import { ApiRequest } from '@api/basePage';
import { mapGetters } from 'vuex';
import { getBtnsId } from '@/libs/btnsPermission'
import { getToSkipOAUrlService } from '@/api/commodity/common'
export default {
  mixins: [dynamictableactions],
  data () {
    return {
      deleteUuids: [],
      actions: []
    }
  },
  computed: {
    ...mapGetters('permissions/systemBtns', [
      'showBtn'
    ]),
  },
  created () {
  },
  methods: {
    handleClickMore (name, row) {
      if (name === 'Edit') {
        let jumpPath = this.basePath + 'Edit'
        this.$router.push({
          path: jumpPath,
          query: {
            uuid: row.uuid
          }
        })
      } else if (name === 'Del') {
        this.$Modal.confirm({
          title: '删除操作',
          content: '确定删除此数据吗？',
          onOk: () => {
            let data = {
              'uuids': row.uuid,
            }
            // 开始请求商品列表
            ApiRequest(
              this.requestApi.delTableList.url,
              this.requestApi.delTableList.type,
              data, true
            ).then(res => {
              if (res.retStatus === '1') {
                this.$Message.success('删除成功')
                this.actionsChange();
              }
            })
          }
        })
      } else if (name === 'Audit') {
        let curBtnId = getBtnsId('审核')
        sessionStorage.setItem('buttonId', curBtnId)
        const data = { oaRequestId: row.workflowRequestId }
        getToSkipOAUrlService(data).then(retData => {
          window.open(retData);
        })
      } else if (name === 'View') {
        let jumpPath = this.basePath + 'View'
        const { href } = this.$router.resolve({ path: jumpPath, query: { uuid: row.uuid } });
        window.open(href, '_blank');
      }
    },
  }
}
</script>
